今天我們就來撰寫你的第一支程式吧!!
昨天有提到 Go 的工作區,我們在 src 的資料夾添加 myProject 的資料夾,之後練習的檔案都可以放在這,資料夾名稱你可以取你喜歡的名稱。
接下來,在裡面添加一個 hello_world.go 的檔案,並用 VS Code 開啟。
複製以下的程式碼到 hello_world.go 檔案中。
package main
import "fmt"
func main() {
fmt.Println("Hello World!!")
}
這樣就完成你的第一支程式了,那該怎麼執行呢?
Go 在執行程式需要經過以下三個步驟:
程式已經已經寫完了,所以我們要來建置該程式,在終端機上輸入:
$ go build hello_world.go
當你輸入完畢按下 Enter 後,終端機沒有反應,是正常的。但當你去看 myProject 資料夾多出了 hello_world 的 Unix 執行檔。
要怎麼執行該支程式呢?
其實有很多方法,你可以去點擊剛剛多出的 hello_world 的執行檔,也可以執行以下指令,在終端機輸入以下指令:
$ ./ main
Hello World!!
這樣一來就完成了你第一支 Go 的程式。
接下來,來解釋一下剛剛那段程式碼到底做了什麼事。
Go 是以"包( package )"作為程式專案的管理單位。所以在每個 Go 的程式中,都必須先聲明它所屬的包是哪個;而且每個專案都至少包含一個 main 包,不然編譯器會直接報錯,且不會生成執行檔。
Go package 包含以下特點:
import 是 Go 語言中用於匯入套件的關鍵字,主要用於導入其他包 ( package ) 中的函數、變數或類型,以便在當前的程式中使用它們,同時,也可以匯入別人寫好的 package,匯入套件的方式如下:
import "package_name"
如果有多個需要匯入的套件可以這樣寫:
import "net/http"
import '"time"
import "fmt"
也可以這樣寫:
import(
"net/http"
"time"
"fmt"
)
func 是 Go 中定義函數(function)的關鍵字。所有函數都用 func
為開頭。結構如下:
func 函數名稱(參數)(返回值){
// 函數主體
}
以上就是基本的 func 的構造,之後會再細講有關參數及返回值的內容。
main() 是 Go 程式的進入點,並且一個 main package 只能有一個 main 函數,且不接受任何參數,也不返回任何值。
fmt
是 Go 的標準庫中的一個套件(package),用於格式化輸出和輸入。它提供了一些函數,讓我們可以輕鬆地在終端上輸出文本,並控制輸出的格式。Println
就是 fmt
其中一個函數,主要是用於將文本或變數的值輸出到終端,每次呼叫後會自動換行。
如果翻成中文就是:「 使用 fmt 這個套件中的 Println 函數 」。
今天的 Go 冒險就大致上是這樣了,明天將繼續介紹 Go 有趣之處。
參考資料: